1. Field of the Invention
The present invention relates to printers for printing an image on a print medium, and, more particularly, to a method of transferring image data from a host computer to such a printer.
2. Description of the Related Art
A "host-based" printer system includes a printer which is electrically connected to a host computer. The host computer executes a significant number of the instructions necessary for printing with the printer. By using the capabilities of the electrical processor in the host computer, the electrical processor and memory requirements in the printer may be reduced, thereby reducing complexity and cost of the printer. A typical host-based printer system is shown in FIG. 1.
For certain types of printing, it is known to move the printhead across the print medium in a direction transverse to the advance direction of the print medium and control the sequencing and/or timing of the placement of the ink dots on the print medium to inhibit the formation of an objectionable print artifact. For example, a "shingling" printing technique uses multiple passes of the printhead and places only a portion of the ink dots on the print medium during any particular pass of the printhead to avoid the formation of a color/black banding artifact on the print medium in the event a color ink jet cartridge is utilized. A shingling technique does not change the location of the ink dots on the print medium, but rather changes the sequencing or temporal placement of the ink dots on the print medium. A 50% shingling technique places 50% of the ink dots on the print medium during a first scan of the printhead in a checkerboard pattern, and places the remaining 50% of the ink dots on the print medium in a complementary checkerboard pattern in a next scan of the printhead across the print medium.
When printing with a shingling technique as described above with a host-based printer system, it is known to provide image data from the host computer to the printer such that the data may be readily usable by the printer for firing the heater elements associated with each ink emitting orifice in the printhead. For example, referring to FIGS. 2 and 3, and assuming a 50% shingling technique with a printhead having 8 vertically arranged ink emitting orifices, it is known to provide image data from the host computer to the printer which may be directly used by the printer for firing the heating elements in the printhead. That is, the data bits in the image data may be manipulated by the host computer such that every other bit is assigned a zero value by the host computer (FIG. 3). The image data, including the implied zeros within the image data, is transferred from the host computer to the printer and utilized by the printer for firing the heater elements in the printhead in a checkerboard pattern. In a next pass of the printhead across the print medium, the corresponding image data is manipulated by the host computer such that a complementary every other bit is assigned a zero value and transferred from the host computer to the printer. The amount of data in the image data for the two passes of the printhead across the print medium when carrying out a 50% shingling technique is thus twice the amount of data necessary during normal, non-shingled printing.
A checkerboard pattern as described above is shown in FIG. 2, with implied zeros being represented by a "0" and non-implied zeros (i.e., data having a value of either 0 or 1) being represented by an "X". The data shown in FIG. 2 is arranged in vertical slices, with each slice corresponding to a byte of data in FIG. 3. The data in each slice is arranged in a top down manner. Thus, the first bit of slice 1 is an "0" and the first bit of slice 2 is an "X".
It is also known to transfer all of the original image data from the host computer to the printer during a shingling process and use the electrical processor within the printer to manipulate the data and insert known zero data bits within the image data for each scan of the printhead. For example, referring to FIG. 4, two bytes of image data to be printed by the printer (with each bit labeled 1 through 16), may be directly transferred from the host computer to the printer. The electrical processor in the printer is used to manipulate bits 1-16 during a 50% shingling routine such that known zero values within the two bytes of data are substituted by the electrical processor in the printer. More particularly, during a first scan using a 50% shingling technique, the even numbered bits 2, 4, 6 . . . 16 are assigned a zero value by the electrical processor in the printer, with the actual values of the odd numbered bits 1, 3, 5 . . . 15 remaining unchanged (FIG. 5). The altered two bytes of data are then used by the printer for firing heater elements in the printhead in a checkerboard manner. During a second scan of the printhead across the print medium, the odd numbered bits 1, 3, 5 . . . 15 are assigned zero values by the electrical processor in the printer, and the actual values of the even numbered bits 2, 4, 6 . . . 16 remain unchanged (FIG. 6). This manipulated image data is used by the printer during the second scan of the printhead to print ink dots on the print medium in a checkerboard pattern which is complementary to the first scan of the printhead.